Operating systems and application programs often include a graphical user interface for interfacing with users. Such a graphical user interface displays information within one or more display windows on a computer screen. A display window is a specific sub-area within the entire display area of the computer screen, or is the entire display area itself. The graphical user interface allows users to create one or more display windows corresponding to one or more different tasks. Once the display windows have been created, the user can position the display windows in different parts of the computer screen using an input device such as a mouse or keyboard. The user then chooses different tasks to perform by selecting from among the different display windows in the different parts of the computer screen.
When multiple display windows are created as described above, the display windows may overlap on the computer screen. When the display windows overlap, a portion of one or more of the display windows becomes unreadable, and the use of the display windows becomes difficult. Although the user can reposition and/or resize the display windows using the input device, this requires an unwelcome interruption of the user's activities to select positions and sizes for the display windows. Further, to avoid overlaps among the display windows and still maximize the use of the display area, the user may find it necessary to reposition and resize a number of display windows until their borders are closely adjacent and they take up most of the screen.
Accordingly, existing graphical user interfaces provide a feature called "tiling". Tiling involves the automatic aligmnent of the display windows on the computer screen so that they fill the entire display area and their borders touch. An example of a conventional tiling method performed by an existing graphical user interface is illustrated in FIGS. 1 and 2. FIG. 1 shows a typical display screen defining an arrangement in which three display windows are displayed on a computer screen. As shown, display windows A-C are provided on the display screen. It is to be assumed that display windows A-C were accessed by the user in alphabetical order. That is, display window C was most recently accessed, display window B was accessed before display window C, and display window A was accessed first.
When the user provides a request to the graphical user interface to "tile" the display windows of FIG. 1, the graphical user interface redraws display windows A-C in the conventional fashion shown in FIG. 2. This conventional method divides the display area by the number of display windows currently defined by the user (three, in the instant case) and theta redisplays the display windows in equally sized portions of the display area. The conventional method displays the equally sized display windows in the order of their most recent use. Thus, as shown in FIG. 2, display window C is displayed in the left portion of the computer screen, display window B is displayed in the middle of the computer screen and display window A is displayed in the right portion of the computer screen.
Although the conventional tiling method described above provides a method of organizing the display windows and maximizing the use of the display area, the user may find the use of the display windows to be awkward. One reason is that the user may have intentionally created some display windows larger than other display windows. For example, the user may have sized the display windows based on a preference or necessity of viewing the information displayed.
Another reason the user may find the conventional tiling method awkward is that the user may have positioned the display windows based on an intentional methodology. For example, the user may have placed the most frequently used or most important display window in a central part of the display screen. The conventional tiling method destroys this arrangement. Further, even if the user has not intentionally created such an arrangement or size distinction as described above, the user may have become accustomed to the sizes and locations of all of the display windows. Tiling the display windows in the conventional fashion described above destroys this familiarity. As such, the resulting ease of access of the display windows by the user is lost.